// 给定一个整数数组 nums，其中 nums[i] ≠ nums[i+1]，数组可能包含多个峰值，在这种情况下，返回任何一个峰值所在位置即可

// 思路： 二分查找，峰值元素严格大于左右相邻元素,比较mid和mid+1的元素判断
// 时间复杂度：O(logn)
// 空间复杂度：O(1)
function findPeakElement(arr) {
    let left = 0
    let right = arr.length - 1
    while (left < right) {
        let mid = Math.floor((right - left) / 2) + left
        if (arr[mid] < arr[mid + 1]) {
            left = mid + 1
        } else {
            right = mid
        }
    }
    return left
}

let arr = [1, 2, 5, 2, 5, 1, 2]
console.log(findPeakElement(arr));